
/******************************************************************
系统名称:  
类  名  称: WebViewActivity.java
软件版权: 恒生电子股份有限公司
系统版本: 1.0
开发人员: maqf
开发时间: 2015-05-15
功能说明: 内置网页浏览
审核人员: 
相关文档: 
修改记录: 需求编号         修改日期         修改人员                     修改说明
 
 ******************************************************************/
package com.hundsun.fcp.activity;

import android.annotation.TargetApi;
import android.os.Build;
import android.text.TextUtils;
import android.webkit.WebSettings;
import android.webkit.WebSettings.LayoutAlgorithm;
import android.webkit.WebView;
import android.webkit.WebViewClient;

import com.hundsun.fcp.R;
import com.hundsun.fcp.base.BaseActivity;
import com.hundsun.fcp.common.AppointFiled.IntentKeyDef;
import com.hundsun.fcp.common.Redirect;
import com.hundsun.fcp.common.utils.StringUtils;


@TargetApi(Build.VERSION_CODES.ECLAIR_MR1)
public class WebViewActivity extends BaseActivity{
	 
	private WebView mWebView ;
	
	@Override
	public void initView() {
		super.initView();
		mWebView = (WebView) findViewById(R.id.webview) ;
		
		mWebView.getSettings().setSupportZoom(false);
		mWebView.getSettings().setBuiltInZoomControls(false);
		mWebView.getSettings().setJavaScriptEnabled(false);		//设置支持js
		mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); 
		//mWebView.getSettings().setUseWideViewPort(true); 
		//mWebView.getSettings().setLoadWithOverviewMode(true); 
		/**
         * 用WebView显示图片，可使用这个参数
         * 设置网页布局类型：
         * 1、LayoutAlgorithm.NARROW_COLUMNS ： 适应内容大小
         * 2、LayoutAlgorithm.SINGLE_COLUMN:适应屏幕，内容将自动缩放
         */
		mWebView.getSettings().setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS);
		mWebView.setWebViewClient(new WebViewClientLoad()) ;
		
		if(Build.VERSION.SDK_INT>10 && Build.VERSION.SDK_INT <17){
			fixWebView() ;
		}
		
		loadurl() ;
	}
	
	@Override
	protected void initHeader() {
		super.initHeader();
		String title= getIntent().getStringExtra(IntentKeyDef.WEBVIEW_TITLE) ;
		mHeaderMenu.setTitle(TextUtils.isEmpty(title)?"":title) ;
	}
	
	private void loadurl(){
		String url= getIntent().getStringExtra(IntentKeyDef.WEBVIEW_URL) ;
		if(!StringUtils.isEmpty(url)){
			mWebView.loadUrl(url) ;
		}else{
			Redirect.makeToast(this, "网址错误") ;
		}
	}
	
	private class WebViewClientLoad extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);// 当打开新链接时，使用当前的 WebView，不会使用系统其他浏览器
            return true;
        }
    }
	
	@Override
	public void onBackPressed() {
		if (mWebView.canGoBack()) {
			mWebView.goBack();
			return;
		}
		super.onBackPressed();
	}
	
	@TargetApi(Build.VERSION_CODES.HONEYCOMB)
	private void fixWebView(){
		mWebView.removeJavascriptInterface("searchBoxJavaBridge_ds") ;
	}

	@Override
	protected int getContentLayout() {
		return R.layout.activity_webview;
	}
}
